/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package tesis.service.impl;

import java.util.ArrayList;
import java.util.List;
import javax.inject.Inject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import tesis.domain.Usuario;
import tesis.domain.dto.UsuarioDTO;
import tesis.service.CrudService;
import tesis.service.UsuarioService;

/**
 *
 * @author hectdx
 */
@Transactional
@Service("usuarioService")
public class UsuarioServiceImpl implements UsuarioService{
    private final static Logger LOG=LoggerFactory.getLogger(UsuarioServiceImpl.class);
    @Inject
    private CrudService crud;
    
    
    @Override
    public List<UsuarioDTO> find() {
        List<UsuarioDTO> lstUsuarios=new ArrayList<UsuarioDTO>();
        try{
            LOG.info("buscando usuarios");
            crud.findByNamedQuery("Usuario.findAll");
            LOG.info("lista obtenida con éxito, tam: "+lstUsuarios.size());
        }catch(RuntimeException ex){
            LOG.error("Error al obtener usuarios",ex);
            throw ex;
        }
        return lstUsuarios;
    }

    @Override
    public UsuarioDTO findById() {
        throw new UnsupportedOperationException("Not supported yet.");
    }
    
    
    
}
